# 逻辑运算符 and or not
# and 和 与 A B  A and B为真的情况
# A和B都为真 返回B的值 A和B其中一个为假 返回假的值 A和B都为假 返回A的值 短路运算
import math

a = 10
b = "abc"
print(a and b)
b = ""
print(a and b)
a = 0
b = False
print(a and b)
# or 或者 A B A or B 为真 A和B中一个为真就为真 任何一个为假 那么就为假
# A or B 如果为真 返回第一个真值
a = 20
b = "abc"
print(a or b)
# 如果为假 返回最后一个假值
a = False
b = 0
print(a or b)
# not 非 会返回布尔值 A not A 如果A为真 返回False 如果A为假 返回True
a = 20
print(not a)
a = 0
print(not a)
# 水仙花数的判断 153 = 1*1*1+5*5*5+3*3*3 = 1+125+27
# 使用算术运算符分位 使用比较运算符比较 1*1*1+5*5*5+3*3*3==153
# 接受输入
num = int(input("请输入一个三位数："))
baiwei = num // 100
shiwei = num // 10 - baiwei * 10
gewei = num % 10
print(gewei ** 3 + shiwei ** 3 + baiwei ** 3 == num)
# a b c 三个数 是三角形的三条边 计算三角形的周长和面积
a = 3
b = 4
c = 5
# 周长
p = a + b + c
# math数学库中的sqrt方法开根号
s = math.sqrt(0.5 * p * (0.5 * p - a) * (0.5 * p - b) * (0.5 * p - c))
print(f"三角形的周长：{p}")
print(f"三角形的面积：{s}")
